|
本帖最后由 99010 于 2021-4-21 15:00 编辑
gnb是一个国产的虚拟局域网软件,可实现大部分内网穿透组网,实测组网传输文件效果比zerotier高效
使用环境:
A路由器网件4300v1,移动大内网,光猫拨号。
B路由器新3,移动大内网,光猫拨号。
C路由器J1900软路由拨号,联通公网。
组建的虚拟局域网互传文件,基本跑满上传带宽(注:如果使用加密--crypto xor,网件、新3路由器CPU会满载)
一。安装组件
- opkg update
- opkg remove git
- opkg install git-http ca-bundle bash kmod-tun
复制代码 下载项目(30MB大小,请确认有足够的存储空间)
- git clone https://github.com/gnbdev/gnb.git
复制代码 或者国内
- git clone https://gitee.com/gnbdev/gnb.git
复制代码
二。修改conf_tpl目录里面的默认配置文件(默认只有3个,可自行添加)
比如修改1001
address.conf
- i|0|39.108.10.191|9001
- i|0|101.32.178.3|9001
- i|0|103.27.187.204|9001
复制代码
route.conf,组网的其他2个路由器的ip为192.168.2.1、192.168.11.1,注意:组网的路由器不能使用同IP段
- 1001|10.1.0.1|255.255.255.0
- 1002|10.1.0.2|255.255.255.0
- 1003|10.1.0.3|255.255.255.0
- 1002|192.168.2.0|255.255.255.0
- 1003|192.168.11.0|255.255.255.0
复制代码
script/if_up_linux.sh,添加路由表(根据route.conf)。这个记得查看权限0775
- #!/bin/sh
- #GNB ENV $GNB_IF_NAME $GNB_MTU $GNB_TUN_IPV4 $GNB_TUN_IPV6
- ip route add 192.168.2.0/24 via 10.1.0.2
- ip route add 192.168.11.0/24 via 10.1.0.3
复制代码
按照架构修改gnb_initkey_linux_x86_64.sh,参考如下。(配置默认只有3个,可自行添加)
- #!/bin/sh
- GNB_DIR=$(dirname $0)
- #GNB_BINARY=FreeBSD_amd64
- #GNB_BINARY=Linux_x86_64
- #GNB_BINARY=macOS
- #GNB_BINARY=OpenBSD_amd64
- #GNB_BINARY=raspberrypi_ARMv7
- GNB_BINARY=openwrt/ar71xx-generic
- #GNB_BINARY=openwrt/ar71xx-mikrotik
- #GNB_BINARY=openwrt/ar71xx-nand
- #GNB_BINARY=openwrt/mvebu-cortexa9
- #GNB_BINARY=openwrt/x86_64
- #GNB_BINARY=openwrt/ramips-mt76x8
- 。。。。。以下略过。。。。
复制代码
运行生成配置
- bash gnb_initkey_linux_x86_64.sh
复制代码 创建配置存放目录,并复制配置文件- mkdir -p /etc/gnb
- cp -r /root/gnb/conf /etc/gnb
复制代码 复制执行程序到/usr/bin(这是举例,请按照所用的路由器架构自行修改程序路径),记得添加权限0755- cp /root/gnb/bin/openwrt/ar71xx-generic/gnb /usr/bin
复制代码 新建启动项/etc/init.d/gnb,权限0755,内容参考如下(其他路由器用配置文件1002或者1003)- #!/bin/sh /etc/rc.common
- # "new(er)" style init script
- # Look at /lib/functions/service.sh on a running system for explanations of what other SERVICE_
- # options you can use, and when you might want them.
- START=99
- SERVICE_USE_PID=1
- SERVICE_WRITE_PID=1
- SERVICE_DAEMONIZE=1
- start() {
- cp -r /etc/gnb /tmp
- service_start /usr/bin/gnb -i gnbTun1001 -c /tmp/gnb/conf/1001 --mtu 1280
- }
- stop() {
- service_stop /usr/bin/gnb
- rm -rf /tmp/gnb
- }
复制代码 运行- /etc/init.d/gnb enable
- /etc/init.d/gnb start
复制代码
最后关键一步
到网络-接口,添加一个新接口,选不配置网络协议,网络接口选gnbTun1001,防火墙选lan,保存&应用。(注意,这里保存后gnb会挂断,重启gnb就好)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
其他路由器复制bin目录里面的执行程序以及conf文件夹(记得修改配置),按照相同位置传上去就可以了。
|
|